package com.ninthgroup.service;

import com.ninthgroup.entity.Doctor;
import com.ninthgroup.vo.DoctorVo;
import com.ninthgroup.vo.Result;

/**
 * @author ：1452863884@qq.com rcg
 * @date ：Created in 2022/10/16 21:06
 * @description：医生的接口方法
 * @modified By：
 * @version: 1.0
 */
public interface DoctorService {

    /**
     * @param currentPage
     * @param pageSize
     * @param doctorVo
     * @return com.ninthgroup.vo.Result
     * @create by: 1452863884@qq.com rcg
     * @description:查询所有员工和分页和条件查询
     * @create time: 2022/10/18 19:10
     */
    Result selectAllAndPage(Integer currentPage, Integer pageSize, DoctorVo doctorVo);


    /**
     * @param did
     * @param status
     * @return com.ninthgroup.vo.Result
     * @create by: 1452863884@qq.com rcg
     * @description:更新员工（医生）的状态
     * @create time: 2022/10/18 19:10
     */
    Result updateStatus(Integer did, Integer status);

    /**
     * @param did
     * @return com.ninthgroup.vo.Result
     * @create by: 1452863884@qq.com rcg
     * @description:删除员工（医生）
     * @create time: 2022/10/18 19:10
     */
    Result deleteDid(Integer did);

    /**
     * @param doctor
     * @return com.ninthgroup.vo.Result
     * @create by: 1452863884@qq.com rcg
     * @description:更新用户（医生）
     * @create time: 2022/10/18 19:10
     */
    Result updateDoctor(Doctor doctor);


    /**
     * @param doctor
     * @return com.ninthgroup.vo.Result
     * @create by: 1452863884@qq.com rcg
     * @description:保存新员工医生用户
     * @create time: 2022/10/18 19:11
     */
    Result insertDoctor(Doctor doctor);


    /**
     * @param doctor
     * @return com.ninthgroup.entity.Doctor
     * @create by: 1452863884@qq.com rcg
     * @description:登录
     * @create time: 2022/10/21 20:14
     */
    Doctor findnameandpwd(Doctor doctor);


    /**
     * @param dId
     * @return com.ninthgroup.vo.Result
     * @create by: 1452863884@qq.com rcg
     * @description:更新个人信息通过id
     * @create time: 2022/10/21 20:11
     */
    Result findOneById(Integer dId);


    /**
     * @param dId
     * @return com.ninthgroup.vo.Result
     * @create by: 1452863884@qq.com rcg
     * @description:医生表的多表联查通过医生查询当前该医生 的排班情况
     * @create time: 2022/10/23 22:23
     */
    Result findManyTable(Integer dId);


    /**
     * @create by: 1452863884@qq.com rcg
     * @description:查询所有排过班的医生信息
     * @create time: 2022/10/23 22:26
     * @param
     * @return com.ninthgroup.vo.Result
     */
    Result selectAllDoctorAndScheuing();




    /**
     * 统计 医生性别
     */
    Result selectBysex();
    /**
     * 统计 医生年龄
     */
    Result selectByAge();




}
